1. Field of the Invention
The present invention relates to image processing, and, in particular, to computer-implemented processes and apparatuses for encoding and/or decoding video signals for storage, transmission, and/or playback.
2. Description of the Related Art
Conventional systems for playing video in a personal computer (PC) environment are limited, in part, by the processing capabilities of the PC host processors. These limitations include low video frame rates and small video window sizes for display of video images. Such limitations result in low video quality. As a result, some conventional systems for playing video in a PC environment require additional hardware that is designed to process video data at the rates needed to provide acceptable video quality. This additional hardware adds undesirable costs to the PC system.
It is, therefore, desirable to provide a video playback system for displaying high-quality, full-motion digital video images on a graphics display monitor in a PC environment that does not require any additional hardware. Such a video playback system is preferably capable of performing decoding and display functions to support a playback mode. In playback mode, the playback video system would access an encoded video bitstream from a mass storage device or receive the encoded video bitstream from a remote source, decode the bitstream on the host processor, and display the decoded video on a display monitor.
It is also desirable to provide a video compression system for generating the encoded video bitstream that will be decoded and displayed by the video playback system. Such a video compression system is preferably capable of performing capture, encoding, decoding, and display functions to support both a compression mode and the playback mode. In compression mode, the video compression system would capture and encode video images generated by a video generator, such as a video camera, VCR, or laser disc player. The resulting encoded video bitstream would then be stored to a mass storage device, such as a hard drive or, ultimately, a CD-ROM, for future decoding, and/or transmitted to a remote playback system for real-time decoding. At the same time, the encoded video bitstream could also be decoded and displayed on a display monitor to monitor the compression-mode processing.
Most known video codec (i.e., coder/decoder) architectures are designed to generate compressed video for playback in a limited class of processing environments. If the video codec is designed for a playback system with relatively low processing capabilities (e.g., a low-end personal computer (PC) system), then decoding the compressed video on a playback system with greater processing capabilities (e.g., a high-end PC system) will not provide significant performance advantages. If, on the other hand, the video codec is designed for a high-end PC system, then the quality of the playback output is invariably degraded in order to decode the compressed video on a low-end PC system.
In many known video codecs, the only mechanism for degrading the video quality during playback is the dropping of frames. If the video codec includes interframe encoding, then, in order to allow for the dropping of frames, some of the frames may be encoded as disposable frames (i.e., those that may be dropped without affecting the decoding of subsequent frames). The inclusion of such disposable frames tends to increase the size of the compressed bitstream. In addition, dropping frames results in jerky and unnatural video motion that can be disturbing to the viewer.
It is desirable, therefore, to provide a video codec that provides playback of compressed video in a variety of processing environments in which frames are not dropped when playback is performed on low-end systems.
It is accordingly an object of this invention to overcome the disadvantages and drawbacks of the known art and to provide video playback systems for displaying high-quality, full-motion video images in PC environments.
It is a further object of this invention to provide a video compression systems for generating the encoded video bitstreams to be decoded and displayed by the playback video systems.
It is a particular object of the present invention to provide video playback systems for displaying video images under multi-media operating systems running on personal computers with general-purpose host processors.
It is a further particular object of the present invention to provide a video codec that provides playback of compressed video in a variety of processing environments in which frames are not dropped when playback is performed on low-end systems.
Further objects and advantages of this invention will become apparent from the detailed description of a preferred embodiment which follows.